package com.rm.zeyou.service;

import com.github.pagehelper.PageInfo;
import com.rm.zeyou.entity.BrokerPayoutDetail;
import com.baomidou.mybatisplus.extension.service.IService;
import com.rm.zeyou.entity.Technician;
import com.rm.zeyou.response.ApiRestResponse;
import com.rm.zeyou.vo.request.SalesmanPayoutListVo;
import com.rm.zeyou.vo.request.SelectUserPayoutIndexVo;
import com.rm.zeyou.vo.response.ConfirmPayoutResponseVo;
import com.rm.zeyou.vo.response.SalesmanPayoutListResponseVo;
import com.rm.zeyou.vo.response.SelectUserPayoutIndexResponseVo;
import com.rm.zeyou.vo.response.UserPayoutVo;

import java.util.List;

/**
 * <p>
 * 经纪人提现记录表 服务类
 * </p>
 *
 * @author YanYang
 * @since 2025-03-12 15:55:07
 */
public interface BrokerPayoutDetailService extends IService<BrokerPayoutDetail> {

    ApiRestResponse<SelectUserPayoutIndexResponseVo> selectBrokerPayoutIndex(Technician technician, SelectUserPayoutIndexVo requestVo);

    ApiRestResponse<Integer> brokerPayout(Technician technician, UserPayoutVo requestVo);

    ApiRestResponse<PageInfo<SalesmanPayoutListResponseVo>> brokerPayoutList(Technician technician, SalesmanPayoutListVo requestVo);

    void updateBrokerWithdrawals();

    ApiRestResponse<List<ConfirmPayoutResponseVo>> brokerConfirmPayout(Technician technician);
}
